package com.castle.fortress.admin.study.exam.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import java.util.Date;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
 * 用户试卷 实体类
 *
 * @author castle
 * @since 2023-02-16
 */
@Data
@ApiModel(value = "studyMemberExam对象", description = "用户试卷")
public class StudyMemberExamDto implements Serializable {
	private static final long serialVersionUID = 1L;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "主键")
	@JsonProperty("id")
	private Long id;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "会员考试记录")
	@JsonProperty("recordId")
	private Long recordId;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "试卷ID")
	@JsonProperty("examId")
	private Long examId;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "用户ID")
	@JsonProperty("memberId")
	private Long memberId;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "题目ID")
	@JsonProperty("examQuestionId")
	private Long examQuestionId;
	@ApiModelProperty(value = "题目类型(单选题/多选题)")
	@JsonProperty("questionType")
	private String questionType;
	@ApiModelProperty(value = "得分")
	@JsonProperty("score")
	private Integer score;
	@ApiModelProperty(value = "标题")
	@JsonProperty("title")
	private String title;
	@ApiModelProperty(value = "标题附图")
	@JsonProperty("titleImg")
	private String titleImg;
	@ApiModelProperty(value = "标题音频")
	@JsonProperty("titleMp3")
	private String titleMp3;
	@ApiModelProperty(value = "选项类型(文字/图文)")
	@JsonProperty("optionType")
	private String optionType;
	@ApiModelProperty(value = "题目解析")
	@JsonProperty("analysis")
	private String analysis;
	@ApiModelProperty(value = "题目排序")
	@JsonProperty("sort")
	private Integer sort;
	@ApiModelProperty(value = "答案")
	@JsonProperty("answer")
	private String answer;
	@ApiModelProperty(value = "选项A内容")
	@JsonProperty("answerA")
	private String answerA;
	@ApiModelProperty(value = "选项B内容")
	@JsonProperty("answerB")
	private String answerB;
	@ApiModelProperty(value = "选项C内容")
	@JsonProperty("answerC")
	private String answerC;
	@ApiModelProperty(value = "选项D内容")
	@JsonProperty("answerD")
	private String answerD;
	@ApiModelProperty(value = "选项E内容")
	@JsonProperty("answerE")
	private String answerE;
	@ApiModelProperty(value = "选项F内容")
	@JsonProperty("answerF")
	private String answerF;
	@ApiModelProperty(value = "用户选择的答案")
	@JsonProperty("choiceAnswer")
	private String choiceAnswer;
	@ApiModelProperty(value = "状态")
	@JsonProperty("status")
	private Integer status;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "创建者")
	@JsonProperty("createUser")
	private Long createUser;
	@DateTimeFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@JsonFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@ApiModelProperty(value = "创建时间")
	@JsonProperty("createTime")
	private Date createTime;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "更新者")
	@JsonProperty("updateUser")
	private Long updateUser;
	@DateTimeFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@JsonFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@ApiModelProperty(value = "更新时间")
	@JsonProperty("updateTime")
	private Date updateTime;
	@ApiModelProperty(value = "是否删除")
	@JsonProperty("isDeleted")
	private Integer isDeleted;
	@ApiModelProperty(value = "创建者姓名")
	@JsonProperty("createUserName")
	private String createUserName;

}
